home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1997 August / Walnut Creek CDROM.7z / VOL_400 / 415_02 / CPP_LIBS / TEST / TEST1.C < prev   
Encoding:
C/C++ Source or Header  |  1993-09-13  |  1.6 KB  |  74 lines

  1. #include   "cpp_entry.h"
  2. #include   "LinkedList.h" 
  3. #include   "HashTable.h"
  4. #include   <iostream.h>
  5. #include    "String.h"
  6. #include    <stdlib.h>
  7.  
  8. #define    BLK_SIZE  500
  9.  
  10. int      block[2 * BLK_SIZE] ;
  11. int      sec_block[2 *BLK_SIZE] ;
  12.  
  13. void  main (int   argc, char **argv)
  14.   cerr << "Entered main " << endl ;
  15.  
  16.   int *temp ;
  17.   LinkedList<int>  *x = new  LinkedList<int> ;
  18.   LinkedList<int>  *y = new  LinkedList<int> ;
  19.   (*x)->set_impl(LOCKED_DOUBLE) ;
  20.   (*y)->set_impl(LOCKED_DOUBLE) ;
  21.  
  22.   // initialize
  23.   for (int i = 0 ; i != 2 * BLK_SIZE; i++ )
  24.       block[i] = i ;
  25.  
  26.   for (i = 0 ; i != BLK_SIZE; i++ )
  27.     x->queue(&block[i])  ;
  28.  
  29.   for ( ; i != 2 * BLK_SIZE; i++ )
  30.     y->queue(&block[i])  ;
  31.  
  32.  // merge x and y
  33.    x->merge_lists(y) ;
  34.  
  35.  // get an iterator
  36.  ListIterator<int> iter(x) ;
  37.  
  38.  for ( i = 0 ; i != 2 * BLK_SIZE ; i++ )
  39.     sec_block[i] = *(x->remove_from_list(&block[i])) ;
  40.  
  41.   if (memcmp(sec_block, block, sizeof(block) )  == 0 )
  42.     cerr << "COMPARED EQUAL" << endl ;
  43.   else
  44.     cerr << "DID NOT COMPARE EQUAL" << endl ;
  45.  
  46.   cerr << "Going to do Hash Table stuff " << endl ;
  47.  
  48.   HashTable<int,int,2 * BLK_SIZE>    axb ;
  49.   for ( i = 0 ; i != 2 * BLK_SIZE; i++ )
  50.       block[i] = i*10 ;
  51.  
  52.   cerr << "Going to do Hash Table insert " << endl ;
  53.  
  54.   for ( i = 0 ; i != 2 * BLK_SIZE; i++ )
  55.      axb[i] = block[i] ;
  56.  
  57.   cerr << "Going to do Hash Table find " << endl ;
  58.  
  59.   for ( i = 0 ; i != 2 * BLK_SIZE; i++ )
  60.      sec_block[i] = axb[i] ;
  61.  
  62.   if (memcmp(sec_block, block, sizeof(block) )  == 0 )
  63.     cerr << "COMPARED EQUAL" << endl ;
  64.   else
  65.     cerr << "DID NOT COMPARE EQUAL" << endl ;
  66.  
  67.   for ( i = 0 ; i != 2 * BLK_SIZE; i++ )
  68.      axb.remove(i) ;
  69.  
  70.     cerr << "ALL DONE" << endl ;
  71.  
  72.